package cn.wss.flowable.service;

import cn.wss.flowable.common.Page;
import cn.wss.flowable.model.FlowableDeployment;
import cn.wss.flowable.model.FlowableProcessDefinition;

import java.util.Map;

public interface FlowableRepositoryService {

  // 通过文件路径部署流程图
  FlowableDeployment deployByFile(String path, Map<String, Object> variables) throws Exception;

  // 通过字符串部署流程图
  FlowableDeployment deployByString(String name, String data, Map<String, Object> variables);

  // 通过部署id删除部署信息
  void deleteDeploymentById(String id);

  // 分页查询部署信息
  Page<FlowableDeployment> pageDeployment(Map<String, Object> variables);

  // 分页查询流程定义
  Page<FlowableProcessDefinition> pageProcessDefinition(Map<String, Object> variables);
}
